package com.itheima.d3_abstract;

;/*
    在Java中有一个关键字叫：abstract，它就是抽象的意思，可以用它修饰类、成员方法。
    abstract修饰类，这个类就是抽象类；修饰方法，这个方法就是抽象方法。

   抽象类的注意事项、特点
        1 抽象类中不一定有抽象方法，有抽象方法的类一定是抽象类。
        2 类该有的成员（成员变量、方法、构造器）抽象类都可以有。
        3 抽象类最主要的特点：抽象类不能创建对象，仅作为一种特殊的父类，让子类继承并实现。
        4 一个类继承抽象类，必须重写完抽象类的全部抽象方法，否则这个类也必须定义成抽象类。
 */
public class Test1 {

    public static void main(String[] args) {
        A a = new B();
        a.show();
//        A b = new C();
    }


}
abstract class A{
    abstract public void show();
}

class B extends A {
    @Override
    public void show(){
        System.out.println("1111111111111111111");
    }
}

abstract class C extends A{
    @Override
    public void show(){
        System.out.println("2222222222222");
    }
}

